NumPy এর মাধ্যমে Linear Algebra এবং Random Number Generation

Machine Learning - পাইথন ডেটা সায়েন্স (Python Data Science) - NumPy: Numerical Python
206

NumPy হল Python-এর একটি শক্তিশালী লাইব্রেরি যা সংখ্যাত্মক ডেটা (Numerical Data) ম্যানিপুলেশন এবং গাণিতিক কাজের জন্য ব্যবহৃত হয়। এর মাধ্যমে আপনি সহজেই Linear Algebra এবং Random Number Generation এর কাজ করতে পারেন। এই লাইব্রেরি গাণিতিক এবং স্ট্যাটিস্টিক্যাল কাজগুলো দ্রুত এবং কার্যকরীভাবে সম্পন্ন করতে সহায়ক।

১. Linear Algebra in NumPy

Linear Algebra (রৈখিক অ্যালজেব্রা) হল গাণিতিক শাখা যা ভেক্টর, ম্যাট্রিক্স এবং তাদের সাথে সম্পর্কিত অপারেশন নিয়ে কাজ করে। NumPy এ Linear Algebra সম্পর্কিত বেশ কিছু গুরুত্বপূর্ণ কার্যকলাপ রয়েছে, যেমন ম্যাট্রিক্স গুণন, inverse, eigenvalues, ইত্যাদি।

১.১. MATRIX MULTIPLICATION (ম্যাট্রিক্স গুণন)

NumPy-তে ম্যাট্রিক্স গুণন করতে dot() ফাংশন বা @ অপারেটর ব্যবহার করা হয়।

import numpy as np

# দুটি ম্যাট্রিক্স তৈরি
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])

# ম্যাট্রিক্স গুণন
C = np.dot(A, B)

print(C)

অথবা:

C = A @ B

১.২. DETERMINANT (ডিটারমিন্যান্ট)

NumPy-তে ম্যাট্রিক্সের ডিটারমিন্যান্ট বের করার জন্য np.linalg.det() ফাংশন ব্যবহার করা হয়।

import numpy as np

# ম্যাট্রিক্স তৈরি
A = np.array([[1, 2], [3, 4]])

# ডিটারমিন্যান্ট বের করা
det_A = np.linalg.det(A)

print(det_A)

১.৩. INVERSE (ইনভার্স)

ম্যাট্রিক্সের ইনভার্স বের করার জন্য np.linalg.inv() ফাংশন ব্যবহার করা হয়।

import numpy as np

# ম্যাট্রিক্স তৈরি
A = np.array([[1, 2], [3, 4]])

# ম্যাট্রিক্সের ইনভার্স
inv_A = np.linalg.inv(A)

print(inv_A)

১.৪. EIGENVALUES AND EIGENVECTORS (ইগেনভ্যালু এবং ইগেনভেক্টর)

ইগেনভ্যালু এবং ইগেনভেক্টর বের করার জন্য np.linalg.eig() ফাংশন ব্যবহার করা হয়।

import numpy as np

# ম্যাট্রিক্স তৈরি
A = np.array([[1, 2], [3, 4]])

# ইগেনভ্যালু এবং ইগেনভেক্টর বের করা
eigenvalues, eigenvectors = np.linalg.eig(A)

print("Eigenvalues:", eigenvalues)
print("Eigenvectors:", eigenvectors)

২. Random Number Generation in NumPy

NumPy-তে random number generation এর জন্য একটি শক্তিশালী সিস্টেম রয়েছে। এটি র্যান্ডম নাম্বার, র্যান্ডম অ্যারে, প্রোবেবিলিটি ডিস্ট্রিবিউশন থেকে নমুনা নেওয়ার জন্য বিভিন্ন ফাংশন সরবরাহ করে।

২.১. Random Integer (র্যান্ডম পূর্ণসংখ্যা)

np.random.randint(low, high, size) ফাংশন ব্যবহার করে আপনি একটি নির্দিষ্ট রেঞ্জ থেকে র্যান্ডম পূর্ণসংখ্যা উৎপন্ন করতে পারেন।

import numpy as np

# 0 থেকে 10 এর মধ্যে একটি র্যান্ডম পূর্ণসংখ্যা তৈরি করা
random_int = np.random.randint(0, 10)

print(random_int)

২.২. Random Float (র্যান্ডম ভাসমান সংখ্যা)

np.random.rand(size) ফাংশন ব্যবহার করে 0 থেকে 1 এর মধ্যে র্যান্ডম ফ্লোট সংখ্যা উৎপন্ন করা হয়।

import numpy as np

# একটি র্যান্ডম ফ্লোট সংখ্যা তৈরি করা (0 থেকে 1)
random_float = np.random.rand()

print(random_float)

২.৩. Random Array (র্যান্ডম অ্যারে)

np.random.rand() বা np.random.randn() ফাংশন ব্যবহার করে আপনি র্যান্ডম অ্যারে তৈরি করতে পারেন। randn() ফাংশন সাধারণত গড় ০ এবং মান বিচ্যুতি ১ সহ গাউসীয় ডিস্ট্রিবিউশনের র্যান্ডম সংখ্যা তৈরি করে।

import numpy as np

# 3x3 ম্যাট্রিক্সে র্যান্ডম ফ্লোট সংখ্যা তৈরি করা
random_array = np.random.rand(3, 3)

print(random_array)

২.৪. Random Numbers from Normal Distribution (গাউসীয় ডিস্ট্রিবিউশন)

np.random.randn() ফাংশন গাউসীয় ডিস্ট্রিবিউশন থেকে র্যান্ডম নাম্বার উৎপন্ন করে।

import numpy as np

# 2x3 ম্যাট্রিক্সে গাউসীয় ডিস্ট্রিবিউশন থেকে র্যান্ডম সংখ্যা
random_normal = np.random.randn(2, 3)

print(random_normal)

২.৫. Random Choice (র্যান্ডম নির্বাচন)

np.random.choice() ফাংশন ব্যবহার করে আপনি একটি নির্দিষ্ট তালিকা থেকে র্যান্ডম উপাদান নির্বাচন করতে পারেন।

import numpy as np

# একটি তালিকা থেকে র্যান্ডম উপাদান নির্বাচন
items = [1, 2, 3, 4, 5]
random_choice = np.random.choice(items)

print(random_choice)

২.৬. Random Seed (র্যান্ডম সিড)

র্যান্ডম নম্বর জেনারেটরের আচরণ পুনরাবৃত্তি করতে np.random.seed() ফাংশন ব্যবহার করা হয়। এটি একই সিড (seed) মান প্রদান করলে একই র্যান্ডম নাম্বার সিকোয়েন্স প্রদান করবে।

import numpy as np

# র্যান্ডম সিড সেট করা
np.random.seed(42)

# র্যান্ডম পূর্ণসংখ্যা তৈরি করা
random_number = np.random.randint(0, 100)

print(random_number)

সারাংশ

NumPy হল একটি শক্তিশালী লাইব্রেরি যা Linear Algebra এবং Random Number Generation এর জন্য বিভিন্ন কার্যকরী ফাংশন সরবরাহ করে। Linear Algebra-এ ম্যাট্রিক্স গুণন, ডিটারমিন্যান্ট, ইনভার্স, ইগেনভ্যালু ইত্যাদি অপারেশন সহজেই করা যায়, এবং Random Number Generation-এ র্যান্ডম ইন্টিজার, ফ্লোট, গাউসীয় ডিস্ট্রিবিউশন থেকে নমুনা এবং আরো অনেক কিছু তৈরি করা যায়। NumPy-এর এই শক্তিশালী ফিচারগুলি বিজ্ঞান, প্রকৌশল, ডেটা সায়েন্স এবং অন্যান্য গাণিতিক কাজে ব্যবহৃত হয়।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...